home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Misc / Converter2.0 / Source / Converter.m < prev    next >
Text File  |  1992-08-02  |  38KB  |  1,493 lines

  1.  
  2. /* Generated by Interface Builder */
  3.  
  4. #import <appkit/Form.h>
  5. #import "Converter.h"
  6.  
  7. extern double sqrt(double);
  8.  
  9. @implementation Converter
  10.  
  11. - init
  12. {
  13.    [super init];
  14.    calcType = TEMP;
  15.    return self;
  16.  }
  17.  
  18. - closeInfo:sender
  19. /* This method closes the Info panel and opens and displays the MoreInfo panel */
  20. {
  21.       [Info performClose:sender]; /* This closes the Info panel */
  22.       [MoreInfo orderFront:sender]; /* This displays the MoreInfo panel */
  23.       return self; /* End of closeInfo method */
  24.  }
  25.  
  26. - calcInterpol:sender
  27. /* This method calculates the interpolation in the panel */
  28. {
  29.       float OutputValue;
  30.       float valueA;
  31.       float valueB;
  32.       float valueC;
  33.       float valueD;
  34.       float valueF;
  35.      
  36.      valueA = [formA floatValue];
  37.      valueB = [formB floatValue];
  38.      valueC = [formC floatValue];
  39.      valueD = [formD floatValue];
  40.      valueF = [formF floatValue];
  41.      
  42.       
  43.      OutputValue = valueD+((valueF-valueD)*(valueB-valueA)/(valueC-valueA));      
  44.      /* The formula above is OutputValue = D+((F-D)*(B-A)/(C-A))  */
  45.   
  46.       [formE setFloatValue:OutputValue];
  47.       [formE display];
  48.       return self; /* End of closeInfo method */
  49.  }
  50.  
  51.  
  52.  
  53.  /* The Calculation occur here */
  54. - calculate:sender
  55. {
  56.     [inputForm selectTextAt:0];
  57.  
  58. /*  TEMPERATURE */
  59.  
  60. /* Celsius to Fahrenheit */
  61.     if (calcType == TEMP)  {
  62.         float OutputValue;
  63.     OutputValue = (([inputForm floatValue]*1.8)+32.0);
  64.     [outputForm setFloatValue:OutputValue at:0];
  65.     }
  66.  
  67. /* Fahrenheit to Celsius */
  68. if (calcType == CELSIUS)
  69.        {
  70.         float OutputValue;
  71.     OutputValue= (([inputForm floatValueAt:0]-32)/1.8);
  72.     [outputForm setFloatValue:(float)OutputValue at:0];
  73.     }
  74.  
  75. /* Celsius to Kelvin */
  76. if (calcType == KELVIN)
  77.        {
  78.         float OutputValue;
  79.     OutputValue= ([inputForm floatValueAt:0]+273);
  80.     [outputForm setFloatValue:(float)OutputValue at:0];
  81.     }
  82.  
  83. /* Kelvin to Celsius */
  84. if (calcType == KELVINCELSIUS)
  85.        {
  86.         float OutputValue;
  87.     OutputValue= ([inputForm floatValueAt:0]-273);
  88.     [outputForm setFloatValue:(float)OutputValue at:0];
  89.     }
  90.  
  91. /* LENGTH */
  92.  
  93.    if (calcType == CENTI)
  94.        {
  95.         float OutputValue;
  96.     OutputValue= (2.54*[inputForm floatValueAt:0]);
  97.     [outputForm setFloatValue:(float)OutputValue at:0];
  98.     }
  99.  
  100.  if (calcType == INCH)
  101.        {
  102.         float OutputValue;
  103.     OutputValue= (0.3937*[inputForm floatValueAt:0]);
  104.     [outputForm setFloatValue:(float)OutputValue at:0];
  105.     }
  106.  
  107.  if (calcType == METER)
  108.        {
  109.         float OutputValue;
  110.     OutputValue= (0.3048*[inputForm floatValueAt:0]);
  111.     [outputForm setFloatValue:(float)OutputValue at:0];
  112.     }
  113.  
  114.  if (calcType == FOOT)
  115.        {
  116.         float OutputValue;
  117.     OutputValue= (3.2808*[inputForm floatValueAt:0]);
  118.     [outputForm setFloatValue:(float)OutputValue at:0];
  119.     }
  120.  
  121. /* yard to meter */
  122. if (calcType == YARDM)
  123.        {
  124.         float OutputValue;
  125.     OutputValue= ([inputForm floatValueAt:0]*0.9144);
  126.     [outputForm setFloatValue:(float)OutputValue at:0];
  127.     }
  128.  
  129. /* meter to yard */
  130. if (calcType == METERYARD)
  131.        {
  132.         float OutputValue;
  133.     OutputValue= ([inputForm floatValueAt:0]*1.0936);
  134.     [outputForm setFloatValue:(float)OutputValue at:0];
  135.     }
  136.  
  137.  if (calcType == KILOMETER)
  138.        {
  139.         float OutputValue;
  140.     OutputValue= (1.6093*[inputForm floatValueAt:0]);
  141.     [outputForm setFloatValue:(float)OutputValue at:0];
  142.     }
  143.  
  144.  if (calcType == MILE)
  145.        {
  146.         float OutputValue;
  147.     OutputValue= (0.6214*[inputForm floatValueAt:0]);
  148.     [outputForm setFloatValue:(float)OutputValue at:0];
  149.     }
  150.  
  151. if (calcType == NAUTICAL)
  152.        {
  153.         float OutputValue;
  154.     OutputValue= ([inputForm floatValueAt:0]*1.852);
  155.     [outputForm setFloatValue:(float)OutputValue at:0];
  156.     }
  157.  
  158. /* Kilometer to Nautical miles */
  159. if (calcType == KILOMNAUTICAL)
  160.        {
  161.         float OutputValue;
  162.     OutputValue= ([inputForm floatValueAt:0]*0.54);
  163.     [outputForm setFloatValue:(float)OutputValue at:0];
  164.     }
  165.  
  166.  
  167. /* AREA */
  168.  
  169. if (calcType == SCENTI)
  170.        {
  171.         float OutputValue;
  172.     OutputValue= (6.4516*[inputForm floatValueAt:0]);
  173.     [outputForm setFloatValue:(float)OutputValue at:0];
  174.     }
  175.  
  176. if (calcType == SINCH)
  177.        {
  178.         float OutputValue;
  179.     OutputValue= (0.155*[inputForm floatValueAt:0]);
  180.     [outputForm setFloatValue:(float)OutputValue at:0];
  181.     }
  182.  
  183. if (calcType == ACRESFOOT) /* Acre to Square Foot */
  184.        {
  185.         float OutputValue;
  186.     OutputValue= ([inputForm floatValueAt:0]*43560);
  187.     [outputForm setFloatValue:(float)OutputValue at:0];
  188.     }
  189.  
  190. if (calcType == SFOOTACRE)
  191.        {
  192.         float OutputValue;
  193.     OutputValue= (([inputForm floatValueAt:0]*2.29)*0.00001);
  194.     [outputForm setFloatValue:(float)OutputValue at:0];
  195.     }
  196.  
  197.  
  198. if (calcType == SMETER)
  199.        {
  200.         float OutputValue;
  201.     OutputValue= (0.0929*[inputForm floatValueAt:0]);
  202.     [outputForm setFloatValue:(float)OutputValue at:0];
  203.     }
  204.  
  205. if (calcType == SFOOT)
  206.        {
  207.         float OutputValue;
  208.     OutputValue= (10.7639*[inputForm floatValueAt:0]);
  209.     [outputForm setFloatValue:(float)OutputValue at:0];
  210.     }
  211.  
  212. /* Square Yard to Square Meter */
  213. if (calcType == SYARDSMETER)
  214.        {
  215.         float OutputValue;
  216.     OutputValue= ([inputForm floatValueAt:0]*1.196);
  217.     [outputForm setFloatValue:(float)OutputValue at:0];
  218.     }
  219.  
  220. /* Square Meter to Square Yard */
  221. if (calcType == SMETERSYARD)
  222.        {
  223.         float OutputValue;
  224.     OutputValue= ([inputForm floatValueAt:0]*0.836);
  225.     [outputForm setFloatValue:(float)OutputValue at:0];
  226.     }
  227.  
  228. /* Square Mile to Square Kilometer */
  229. if (calcType == SMILESKILO)
  230.        {
  231.         float OutputValue;
  232.     OutputValue= ([inputForm floatValueAt:0]*2.59);
  233.     [outputForm setFloatValue:(float)OutputValue at:0];
  234.     }
  235.  
  236. /* Square Kilometer to Square Mile */
  237. if (calcType == SKILOSMILE)
  238.        {
  239.         float OutputValue;
  240.     OutputValue= ([inputForm floatValueAt:0]*0.386);
  241.     [outputForm setFloatValue:(float)OutputValue at:0];
  242.     }
  243.  
  244. if (calcType == HECTARE)
  245.        {
  246.         float OutputValue;
  247.     OutputValue= ([inputForm floatValueAt:0]*4.0469);
  248.     [outputForm setFloatValue:(float)OutputValue at:0];
  249.     }
  250.  
  251. if (calcType == ACRE)
  252.        {
  253.         float OutputValue;
  254.     OutputValue= ([inputForm floatValueAt:0]*2.47106);
  255.     [outputForm setFloatValue:(float)OutputValue at:0];
  256.     }
  257.  
  258. /* Square Mile to Acre */
  259. if (calcType == SMILEACRE)
  260.        {
  261.         float OutputValue;
  262.     OutputValue= ([inputForm floatValueAt:0]*640);
  263.     [outputForm setFloatValue:(float)OutputValue at:0];
  264.     }
  265.  
  266. /* Acre to Square Mile */
  267. if (calcType == ACRESMILE)
  268.        {
  269.         float OutputValue;
  270.     OutputValue= (([inputForm floatValueAt:0]*1.56)*0.001);
  271.     [outputForm setFloatValue:(float)OutputValue at:0];
  272.     }
  273.  
  274.  
  275.  
  276. /* VOLUME (cubic) */
  277.  
  278. if (calcType == CINCHCMILL)  /* From Cubic Inch to Cubic Millimeter */
  279.        {
  280.         float OutputValue;
  281.     OutputValue= ([inputForm floatValueAt:0]*16400);
  282.     [outputForm setFloatValue:(float)OutputValue at:0];
  283.     }
  284.  
  285. if (calcType == CMILLCINCH)  /* From Cubic Millimeter to Cubic Inch */
  286.        {
  287.         float OutputValue;
  288.     OutputValue= ([inputForm floatValueAt:0]*6.1*0.00001);
  289.     [outputForm setFloatValue:(float)OutputValue at:0];
  290.     }
  291.  
  292. if (calcType == CINCHCCENTI)  /* From Cubic Inch to Cubic Centimeter */
  293.        {
  294.         float OutputValue;
  295.     OutputValue= ([inputForm floatValueAt:0]*16.387);
  296.     [outputForm setFloatValue:(float)OutputValue at:0];
  297.     }
  298.  
  299. if (calcType == CCENTICINCH)  /* From Cubic Centimeter to Cubic Inch */
  300.        {
  301.         float OutputValue;
  302.     OutputValue= ([inputForm floatValueAt:0]*0.061);
  303.     [outputForm setFloatValue:(float)OutputValue at:0];
  304.     }
  305.  
  306.  if (calcType == CFOOTCMETER)   /* From Cubic Foot to Cubic Meter */
  307.        {
  308.         float OutputValue;
  309.     OutputValue= ([inputForm floatValueAt:0]*0.0283);
  310.     [outputForm setFloatValue:(float)OutputValue at:0];
  311.     }
  312.  
  313. if (calcType == CYARDCMETER)   /* From Cubic Yard to Cubic Meter */
  314.        {
  315.         float OutputValue;
  316.     OutputValue= ([inputForm floatValueAt:0]*0.7645);
  317.     [outputForm setFloatValue:(float)OutputValue at:0];
  318.     }
  319.  
  320. if (calcType == CMETERCYARD)   /* From Cubic Meter to Cubic Yard */
  321.        {
  322.         float OutputValue;
  323.     OutputValue= ([inputForm floatValueAt:0]*1.308);
  324.     [outputForm setFloatValue:(float)OutputValue at:0];
  325.     }
  326.     
  327. /* Volume (liquid)  */
  328.  
  329. if (calcType == FOUNCECMILL)   /* From Fluid Ounce to Cubic Millimeter */
  330.        {
  331.         float OutputValue;
  332.     OutputValue= ([inputForm floatValueAt:0]*29600);
  333.     [outputForm setFloatValue:(float)OutputValue at:0];
  334.     }
  335.  
  336. if (calcType == FOUNCEMILLILITRES )   /* From Fluid Ounce to  Millilitres */
  337.        {
  338.         float OutputValue;
  339.     OutputValue= ([inputForm floatValueAt:0]*28.413);
  340.     [outputForm setFloatValue:(float)OutputValue at:0];
  341.     }
  342.  
  343.  
  344.  
  345. if (calcType == TEACMILL)   /* From Teaspoon to Cubic Millimeter*/
  346.        {
  347.         float OutputValue;
  348.     OutputValue= ([inputForm floatValueAt:0]*4930);
  349.     [outputForm setFloatValue:(float)OutputValue at:0];
  350.     }
  351.  
  352. if (calcType == TABLECMILL)   /* From Tablespoon to Cubic Millimeter */
  353.        {
  354.         float OutputValue;
  355.     OutputValue= ([inputForm floatValueAt:0]*14800);
  356.     [outputForm setFloatValue:(float)OutputValue at:0];
  357.     }
  358.  
  359. if (calcType == CUPCMETER)   /* From Cup to Cubic Meter */
  360.        {
  361.         float OutputValue;
  362.     OutputValue= ([inputForm floatValueAt:0]*0.000237);
  363.     [outputForm setFloatValue:(float)OutputValue at:0];
  364.     }
  365.  
  366. if (calcType == PINTCMETER)   /* From Pint to Cubic Meter */
  367.        {
  368.         float OutputValue;
  369.     OutputValue= ([inputForm floatValueAt:0]*0.000473);
  370.     [outputForm setFloatValue:(float)OutputValue at:0];
  371.     }
  372.  
  373. if (calcType == PINTLITRE)   /* From Pint to Litre */
  374.        {
  375.         float OutputValue;
  376.     OutputValue= ([inputForm floatValueAt:0]*0.5682);
  377.     [outputForm setFloatValue:(float)OutputValue at:0];
  378.     }
  379.  
  380. if (calcType == QUARTLITRE)   /* From Quarts to Litre */
  381.        {
  382.         float OutputValue;
  383.     OutputValue= ([inputForm floatValueAt:0]*1.1365);
  384.     [outputForm setFloatValue:(float)OutputValue at:0];
  385.     }
  386.  
  387.  
  388. if (calcType == QUARTCMETER)   /* From Quart to Cubic Meter */
  389.        {
  390.         float OutputValue;
  391.     OutputValue= ([inputForm floatValueAt:0]*0.000946);
  392.     [outputForm setFloatValue:(float)OutputValue at:0];
  393.     }
  394.  
  395. if (calcType == USQUARTLITRE)   /* From US Quart to Litre */
  396.        {
  397.         float OutputValue;
  398.     OutputValue= ([inputForm floatValueAt:0]*0.946);
  399.     [outputForm setFloatValue:(float)OutputValue at:0];
  400.     }
  401.     
  402. if (calcType == LITREUSQUART)   /* From Litre to US Quart */
  403.        {
  404.         float OutputValue;
  405.     OutputValue= ([inputForm floatValueAt:0]*1.057);
  406.     [outputForm setFloatValue:(float)OutputValue at:0];
  407.     }
  408.  
  409. if (calcType == GALLONCMETER)   /* From Gallon to Cubic Meter */
  410.        {
  411.         float OutputValue;
  412.     OutputValue= ([inputForm floatValueAt:0]*0.00379);
  413.     [outputForm setFloatValue:(float)OutputValue at:0];
  414.     }
  415.  
  416. if (calcType == GALLONLITER)   /* From US Gallon to Liter */
  417.        {
  418.         float OutputValue;
  419.     OutputValue= ([inputForm floatValueAt:0]*3.7854);
  420.     [outputForm setFloatValue:(float)OutputValue at:0];
  421.     }
  422.     
  423. if (calcType == LITERGALLON)   /* From Liter to US Gallon */
  424.        {
  425.         float OutputValue;
  426.     OutputValue= ([inputForm floatValueAt:0]*0.264);
  427.     [outputForm setFloatValue:(float)OutputValue at:0];
  428.     }
  429.  
  430. /* MASS */
  431.  
  432. if (calcType == OUNCEGRAM)   /* From Ounce to Gram */
  433.        {
  434.         float OutputValue;
  435.     OutputValue= ([inputForm floatValueAt:0]*28.35);
  436.     [outputForm setFloatValue:(float)OutputValue at:0];
  437.     }
  438.  
  439. if (calcType == GRAMOUNCE)   /* From Gram to Ounce */
  440.        {
  441.         float OutputValue;
  442.     OutputValue= ([inputForm floatValueAt:0]*0.0353);
  443.     [outputForm setFloatValue:(float)OutputValue at:0];
  444.     }
  445.  
  446. if (calcType == POUNDGRAM)   /* From Pound to Gram */
  447.        {
  448.         float OutputValue;
  449.     OutputValue= ([inputForm floatValueAt:0]*453);
  450.     [outputForm setFloatValue:(float)OutputValue at:0];
  451.     }
  452.  
  453. if (calcType == POUNDKILOGRAM)   /* From Pound to Kilogram */
  454.        {
  455.         float OutputValue;
  456.     OutputValue= ([inputForm floatValueAt:0]*0.453);
  457.     [outputForm setFloatValue:(float)OutputValue at:0];
  458.     }
  459.  
  460. if (calcType == KILOGRAMPOUND)   /* From kilogram to Pound */
  461.        {
  462.         float OutputValue;
  463.     OutputValue= ([inputForm floatValueAt:0]*2.2046);
  464.     [outputForm setFloatValue:(float)OutputValue at:0];
  465.     }
  466.  
  467. if (calcType == GRAMPOUND)   /* From Gram to Pound */
  468.        {
  469.         float OutputValue;
  470.     OutputValue= ([inputForm floatValueAt:0]*0.0022046);
  471.     [outputForm setFloatValue:(float)OutputValue at:0];
  472.     }
  473.  
  474. if (calcType == MTONPOUND)   /* From Metric Ton to Pound */
  475.        {
  476.         float OutputValue;
  477.     OutputValue= ([inputForm floatValueAt:0]*2204.6);
  478.     [outputForm setFloatValue:(float)OutputValue at:0];
  479.     }
  480.  
  481. if (calcType == POUNDMTON)   /* From Pound to Metric Ton */
  482.        {
  483.         float OutputValue;
  484.     OutputValue= ([inputForm floatValueAt:0]*0.000453);
  485.     [outputForm setFloatValue:(float)OutputValue at:0];
  486.     }
  487.  
  488. /* FLOW */
  489.  
  490.  if (calcType == LITRESPSUSGPM)   /* From Litres per second to US Gallons per minute */
  491.        {
  492.         float OutputValue;
  493.     OutputValue= ([inputForm floatValueAt:0]*15.850);
  494.     [outputForm setFloatValue:(float)OutputValue at:0];
  495.     }
  496.  
  497. if (calcType == USGPMLITRESPS)   /* From US Gallons per minute to Litres per second */
  498.        {
  499.         float OutputValue;
  500.     OutputValue= ([inputForm floatValueAt:0]*0.06309);
  501.     [outputForm setFloatValue:(float)OutputValue at:0];
  502.     }
  503.  
  504. if (calcType == LITRESPSCFEETPM)   /* From Litres per second to Cubic Feet per minute */
  505.        {
  506.         float OutputValue;
  507.     OutputValue= ([inputForm floatValueAt:0]*2.1189);
  508.     [outputForm setFloatValue:(float)OutputValue at:0];
  509.     }
  510.  
  511. if (calcType == CFEETPMLITRESPS)   /* From Cubic feet per minute to Litres per second */
  512.        {
  513.         float OutputValue;
  514.     OutputValue= ([inputForm floatValueAt:0]*0.47195);
  515.     [outputForm setFloatValue:(float)OutputValue at:0];
  516.     }
  517.  
  518. /* PRESSURE */
  519.  
  520. if (calcType == FEETWKPASCAL)   /* From Feet of Water to Kilopascal */
  521.        {
  522.         float OutputValue;
  523.     OutputValue= ([inputForm floatValueAt:0]*2.9861);
  524.     [outputForm setFloatValue:(float)OutputValue at:0];
  525.     }
  526.  
  527. if (calcType == KPASCALFEETW)   /* From Kilopascal to Feet of Water */
  528.        {
  529.         float OutputValue;
  530.     OutputValue= ([inputForm floatValueAt:0]*0.33488);
  531.     [outputForm setFloatValue:(float)OutputValue at:0];
  532.     }
  533.  
  534. if (calcType == POUNDSSIKPASCAL)   /* From Pound per Square Inch to  Kilopascal */
  535.        {
  536.         float OutputValue;
  537.     OutputValue= ([inputForm floatValueAt:0]*6.8948);
  538.     [outputForm setFloatValue:(float)OutputValue at:0];
  539.     }
  540.  
  541. if (calcType == KPASCALPOUNDSSI)   /* From Kilopascal  to Pound per Square Inch*/
  542.        {
  543.         float OutputValue;
  544.     OutputValue= ([inputForm floatValueAt:0]*0.145);
  545.     [outputForm setFloatValue:(float)OutputValue at:0];
  546.     }
  547.  
  548.  
  549.  
  550. /* OTHER */
  551.  
  552. if (calcType == HPWATTS)   /* From Horsepower to Watts */
  553.        {
  554.         float OutputValue;
  555.     OutputValue= ([inputForm floatValueAt:0]*745.7);
  556.     [outputForm setFloatValue:(float)OutputValue at:0];
  557.     }
  558.  
  559. if (calcType == WATTSHP)   /* From Watts to Horsepower */
  560.        {
  561.         float OutputValue;
  562.     OutputValue= ([inputForm floatValueAt:0]*0.0013);
  563.     [outputForm setFloatValue:(float)OutputValue at:0];
  564.     }
  565.     
  566. if (calcType == BTUKILO)   /* From British Thermal Unit to Kilojoules*/
  567.        {
  568.         float OutputValue;
  569.     OutputValue= ([inputForm floatValueAt:0]*1.055);
  570.     [outputForm setFloatValue:(float)OutputValue at:0];
  571.     }
  572.  
  573. if (calcType == BTUWATTS)   /* From British Thermal Unit to Watts*/
  574.        {
  575.         float OutputValue;
  576.     OutputValue= ([inputForm floatValueAt:0]*0.29307);
  577.     [outputForm setFloatValue:(float)OutputValue at:0];
  578.     }
  579.  
  580.     
  581. if (calcType == KNOTSMPS)   /* From Knots to Meters per second */
  582.        {
  583.         float OutputValue;
  584.     OutputValue= ([inputForm floatValueAt:0]*0.514444);
  585.     [outputForm setFloatValue:(float)OutputValue at:0];
  586.     }
  587.  
  588. if (calcType == REFTONBTUH)   /* From Refrigeration ton to BTU per hour */
  589.        {
  590.         float OutputValue;
  591.     OutputValue= ([inputForm floatValueAt:0]*12000);
  592.     [outputForm setFloatValue:(float)OutputValue at:0];
  593.     }
  594.     return self;
  595.  
  596.      
  597. }
  598. /* ************************************** */
  599. /* This is to label the Input and Output fields */
  600. /* ************************************** */
  601.  
  602. /* TEMPERATURE */
  603.  
  604. /* Celsius to Fahrenheit */
  605. - convertToTemp:sender
  606. {
  607.      calcType = TEMP;
  608.      [inputForm setTitle:"Celsius:" at:0];
  609.      [outputForm setTitle:"Fahrenheit:" at:0];
  610.      [outputForm setStringValue:"" at:0];
  611.      [inputForm display];
  612.      [outputForm display];
  613.      [inputForm selectTextAt:0];
  614.      return self;
  615.  }
  616.  
  617. /* Fahrenheit to Celsuis */
  618. - convertToCelsius:sender
  619. {
  620.      calcType = CELSIUS;
  621.      [inputForm setTitle:"Fahrenheit:" at:0];
  622.      [outputForm setTitle:"Celsius:" at:0];
  623.      [outputForm setStringValue:"" at:0];
  624.      [inputForm display];
  625.      [outputForm display];
  626.      [inputForm selectTextAt:0];
  627.      return self;
  628.  }
  629.  
  630.  
  631. /* Celsius to Kelvin */
  632. - convertToKelvin:sender
  633.  {
  634.      calcType = KELVIN;
  635.      [inputForm setTitle:"Celsius:" at:0];
  636.      [outputForm setTitle:"Kelvin:" at:0];
  637.      [outputForm setStringValue:"" at:0];
  638.      [inputForm display];
  639.      [outputForm display];
  640.      [inputForm selectTextAt:0];
  641.      return self;
  642.   }
  643.  
  644. /* Kelvin to Celsius */
  645. - KelvinToCelsius:sender
  646.  {
  647.      calcType = KELVINCELSIUS;
  648.      [inputForm setTitle:"Kelvin:" at:0];
  649.      [outputForm setTitle:"Celsius:" at:0];
  650.      [outputForm setStringValue:"" at:0];
  651.      [inputForm display];
  652.      [outputForm display];
  653.      [inputForm selectTextAt:0];
  654.      return self;
  655.   }
  656.  
  657.  
  658.  
  659. /* LENGTH */
  660.  
  661. - convertToCenti:sender
  662.  {
  663.      calcType = CENTI;
  664.      [inputForm setTitle:"inches:" at:0];
  665.      [outputForm setTitle:"centimeters:" at:0];
  666.      [outputForm setStringValue:"" at:0];
  667.      [inputForm display];
  668.      [outputForm display];
  669.      [inputForm selectTextAt:0];
  670.      return self;
  671.   }
  672.  
  673. - convertToInch:sender
  674.  {
  675.      calcType = INCH;
  676.      [inputForm setTitle:"centimeters:" at:0];
  677.      [outputForm setTitle:"inches:" at:0];
  678.      [outputForm setStringValue:"" at:0];
  679.      [inputForm display];
  680.      [outputForm display];
  681.      [inputForm selectTextAt:0];
  682.      return self;
  683.   }
  684.  
  685. - convertToMeter:sender
  686.  {
  687.      calcType = METER;
  688.      [inputForm setTitle:"foot:" at:0];
  689.      [outputForm setTitle:"meter:" at:0];
  690.      [outputForm setStringValue:"" at:0];
  691.      [inputForm display];
  692.      [outputForm display];
  693.      [inputForm selectTextAt:0];
  694.      return self;
  695.   }
  696.  
  697.  
  698. - convertToFoot:sender
  699.  {
  700.      calcType = FOOT;
  701.      [inputForm setTitle:"meter:" at:0];
  702.      [outputForm setTitle:"foot:" at:0];
  703.      [outputForm setStringValue:"" at:0];
  704.      [inputForm display];
  705.      [outputForm display];
  706.      [inputForm selectTextAt:0];
  707.      return self;
  708.   }
  709.  
  710. - convertToYardm:sender
  711.  {
  712.      calcType = YARDM;
  713.      [inputForm setTitle:"yard:" at:0];
  714.      [outputForm setTitle:"meter:" at:0];
  715.      [outputForm setStringValue:"" at:0];
  716.      [inputForm display];
  717.      [outputForm display];
  718.      [inputForm selectTextAt:0];
  719.      return self;
  720.   }
  721.  
  722. - MeterToYard:sender
  723.  {
  724.      calcType = METERYARD;
  725.      [inputForm setTitle:"meter:" at:0];
  726.      [outputForm setTitle:"yard:" at:0];
  727.      [outputForm setStringValue:"" at:0];
  728.      [inputForm display];
  729.      [outputForm display];
  730.      [inputForm selectTextAt:0];
  731.      return self;
  732.   }
  733.  
  734.  
  735. - convertToKilometer:sender
  736.  {
  737.      calcType = KILOMETER;
  738.      [inputForm setTitle:"mile:" at:0];
  739.      [outputForm setTitle:"kilometer:" at:0];
  740.      [outputForm setStringValue:"" at:0];
  741.      [inputForm display];
  742.      [outputForm display];
  743.      [inputForm selectTextAt:0];
  744.      return self;
  745.   }
  746.  
  747.  
  748. - convertToMile:sender
  749.  {
  750.      calcType = MILE;
  751.      [inputForm setTitle:"kilometer:" at:0];
  752.      [outputForm setTitle:"mile:" at:0];
  753.      [outputForm setStringValue:"" at:0];
  754.      [inputForm display];
  755.      [outputForm display];
  756.      [inputForm selectTextAt:0];
  757.      return self;
  758.   }
  759.  
  760. - convertToNautical:sender
  761.  {
  762.      calcType = NAUTICAL;
  763.      [inputForm setTitle:"nautical mile:" at:0];
  764.      [outputForm setTitle:"kilometer:" at:0];
  765.      [outputForm setStringValue:"" at:0];
  766.      [inputForm display];
  767.      [outputForm display];
  768.      [inputForm selectTextAt:0];
  769.      return self;
  770.   }
  771.  
  772. - KilomToNautical:sender
  773.  {
  774.      calcType = KILOMNAUTICAL;
  775.      [inputForm setTitle:"kilometer:" at:0];
  776.      [outputForm setTitle:"nautical mile:" at:0];
  777.      [outputForm setStringValue:"" at:0];
  778.      [inputForm display];
  779.      [outputForm display];
  780.      [inputForm selectTextAt:0];
  781.      return self;
  782.   }
  783.  
  784. /* AREA */
  785.  
  786. - convertToSCenti:sender
  787.  {
  788.      calcType = SCENTI;
  789.      [inputForm setTitle:"square inch:" at:0];
  790.      [outputForm setTitle:"square centimeter:" at:0];
  791.      [outputForm setStringValue:"" at:0];
  792.      [inputForm display];
  793.      [outputForm display];
  794.      [inputForm selectTextAt:0];
  795.      return self;
  796.   }
  797.  
  798. - convertToSInch:sender
  799.  {
  800.      calcType = SINCH;
  801.      [inputForm setTitle:"square centimeter:" at:0];
  802.      [outputForm setTitle:"square inch:" at:0];
  803.      [outputForm setStringValue:"" at:0];
  804.      [inputForm display];
  805.      [outputForm display];
  806.      [inputForm selectTextAt:0];
  807.      return self;
  808.   }
  809.  
  810. - AcreToSFoot:sender
  811.  {
  812.      calcType = ACRESFOOT;
  813.      [inputForm setTitle:"acre:" at:0];
  814.      [outputForm setTitle:"square foot:" at:0];
  815.      [outputForm setStringValue:"" at:0];
  816.      [inputForm display];
  817.      [outputForm display];
  818.      [inputForm selectTextAt:0];
  819.      return self;
  820.   }
  821.  
  822. - SFootToAcre:sender
  823.  {
  824.      calcType = SFOOTACRE;
  825.      [inputForm setTitle:"square foot:" at:0];
  826.      [outputForm setTitle:"acre:" at:0];
  827.      [outputForm setStringValue:"" at:0];
  828.      [inputForm display];
  829.      [outputForm display];
  830.      [inputForm selectTextAt:0];
  831.      return self;
  832.   }
  833.  
  834. - convertToSMeter:sender
  835.  {
  836.      calcType = SMETER;
  837.      [inputForm setTitle:"square foot:" at:0];
  838.      [outputForm setTitle:"square meter:" at:0];
  839.      [outputForm setStringValue:"" at:0];
  840.      [inputForm display];
  841.      [outputForm display];
  842.      [inputForm selectTextAt:0];
  843.      return self;
  844.   }
  845.  
  846. - convertToSFoot:sender
  847.  {
  848.      calcType = SFOOT;
  849.      [inputForm setTitle:"square meter:" at:0];
  850.      [outputForm setTitle:"square foot:" at:0];
  851.      [outputForm setStringValue:"" at:0];
  852.      [inputForm display];
  853.      [outputForm display];
  854.      [inputForm selectTextAt:0];
  855.      return self;
  856.   }
  857.  
  858. - convertToSYardSMeter:sender
  859.  {
  860.      calcType = SYARDSMETER;
  861.      [inputForm setTitle:"square yard:" at:0];
  862.      [outputForm setTitle:"square meter:" at:0];
  863.      [outputForm setStringValue:"" at:0];
  864.      [inputForm display];
  865.      [outputForm display];
  866.      [inputForm selectTextAt:0];
  867.      return self;
  868.   }
  869.  
  870. - SMeterToSYard:sender
  871.  {
  872.      calcType = SMETERSYARD;
  873.      [inputForm setTitle:"square meter:" at:0];
  874.      [outputForm setTitle:"square yard:" at:0];
  875.      [outputForm setStringValue:"" at:0];
  876.      [inputForm display];
  877.      [outputForm display];
  878.      [inputForm selectTextAt:0];
  879.      return self;
  880.   }
  881.  
  882. - convertToSMileSKilo:sender
  883.  {
  884.      calcType = SMILESKILO;
  885.      [inputForm setTitle:"square mile:" at:0];
  886.      [outputForm setTitle:"square kilometer:" at:0];
  887.      [outputForm setStringValue:"" at:0];
  888.      [inputForm display];
  889.      [outputForm display];
  890.      [inputForm selectTextAt:0];
  891.      return self;
  892.   }
  893.  
  894. - SKiloToSMile:sender
  895.  {
  896.      calcType = SKILOSMILE;
  897.      [inputForm setTitle:"square kilometer:" at:0];
  898.      [outputForm setTitle:"square mile:" at:0];
  899.      [outputForm setStringValue:"" at:0];
  900.      [inputForm display];
  901.      [outputForm display];
  902.      [inputForm selectTextAt:0];
  903.      return self;
  904.   }
  905.  
  906. - convertToHectare:sender
  907.  {
  908.      calcType = HECTARE;
  909.      [inputForm setTitle:"acre:" at:0];
  910.      [outputForm setTitle:"hectare:" at:0];
  911.      [outputForm setStringValue:"" at:0];
  912.      [inputForm display];
  913.      [outputForm display];
  914.      [inputForm selectTextAt:0];
  915.      return self;
  916.   }
  917.  
  918. - convertToAcre:sender
  919.  {
  920.      calcType = ACRE;
  921.      [inputForm setTitle:"hectare:" at:0];
  922.      [outputForm setTitle:"acre:" at:0];
  923.      [outputForm setStringValue:"" at:0];
  924.      [inputForm display];
  925.      [outputForm display];
  926.      [inputForm selectTextAt:0];
  927.      return self;
  928.   }
  929.  
  930. - SMileToAcre:sender
  931.  {
  932.      calcType = SMILEACRE;
  933.      [inputForm setTitle:"square mile:" at:0];
  934.      [outputForm setTitle:"acre:" at:0];
  935.      [outputForm setStringValue:"" at:0];
  936.      [inputForm display];
  937.      [outputForm display];
  938.      [inputForm selectTextAt:0];
  939.      return self;
  940.   }
  941.  
  942. - AcreToSMile:sender
  943.  {
  944.      calcType = ACRESMILE;
  945.      [inputForm setTitle:"acre:" at:0];
  946.      [outputForm setTitle:"square mile:" at:0];
  947.      [outputForm setStringValue:"" at:0];
  948.      [inputForm display];
  949.      [outputForm display];
  950.      [inputForm selectTextAt:0];
  951.      return self;
  952.   }
  953.  
  954. /* VOLUME (cubic)*/
  955.  
  956. /* Cubic Inch to Cubic Millimeter */
  957. - convertToCInchCMill:sender
  958.  {
  959.      calcType = CINCHCMILL;
  960.      [inputForm setTitle:"cubic inch:" at:0];
  961.      [outputForm setTitle:"cubic millimeter:" at:0];
  962.      [outputForm setStringValue:"" at:0];
  963.      [inputForm display];
  964.      [outputForm display];
  965.      [inputForm selectTextAt:0];
  966.      return self;
  967.   }
  968.  
  969. /* Cubic Millimeter to Cubic Inch */
  970. - CMillToCInch:sender
  971.  {
  972.      calcType = CMILLCINCH;
  973.      [inputForm setTitle:"cubic millimeter:" at:0];
  974.      [outputForm setTitle:"cubic inch:" at:0];
  975.      [outputForm setStringValue:"" at:0];
  976.      [inputForm display];
  977.      [outputForm display];
  978.      [inputForm selectTextAt:0];
  979.      return self;
  980.   }
  981.  
  982. /* Cubic Inch to Cubic Centimeter */
  983. - CInchToCCenti:sender
  984.  {
  985.      calcType = CINCHCCENTI;
  986.      [inputForm setTitle:"cubic inch:" at:0];
  987.      [outputForm setTitle:"cubic centimeter:" at:0];
  988.      [outputForm setStringValue:"" at:0];
  989.      [inputForm display];
  990.      [outputForm display];
  991.      [inputForm selectTextAt:0];
  992.      return self;
  993.   }
  994.  
  995. /* Cubic Centimeter to Cubic Inch */
  996. - CCentiToCInch:sender
  997.  {
  998.      calcType = CCENTICINCH;
  999.      [inputForm setTitle:"cubic centimeter:" at:0];
  1000.      [outputForm setTitle:"cubic inch:" at:0];
  1001.      [outputForm setStringValue:"" at:0];
  1002.      [inputForm display];
  1003.      [outputForm display];
  1004.      [inputForm selectTextAt:0];
  1005.      return self;
  1006.   }
  1007.  
  1008.  
  1009. - convertToCFootCMeter:sender
  1010.  {
  1011.      calcType = CFOOTCMETER;
  1012.      [inputForm setTitle:"cubic foot:" at:0];
  1013.      [outputForm setTitle:"cubic meter:" at:0];
  1014.      [outputForm setStringValue:"" at:0];
  1015.      [inputForm display];
  1016.      [outputForm display];
  1017.      [inputForm selectTextAt:0];
  1018.      return self;
  1019.   }
  1020.  
  1021. /*  Cubic Yard to Cubic Meter */
  1022. - convertToCYardCMeter:sender
  1023.  {
  1024.      calcType = CYARDCMETER;
  1025.      [inputForm setTitle:"cubic yard:" at:0];
  1026.      [outputForm setTitle:"cubic meter:" at:0];
  1027.      [outputForm setStringValue:"" at:0];
  1028.      [inputForm display];
  1029.      [outputForm display];
  1030.      [inputForm selectTextAt:0];
  1031.      return self;
  1032.   }
  1033.  
  1034. /*  Cubic Meter to Cubic Yard */
  1035. - CMeterToCYard:sender
  1036.  {
  1037.      calcType = CMETERCYARD;
  1038.      [inputForm setTitle:"cubic meter:" at:0];
  1039.      [outputForm setTitle:"cubic yard:" at:0];
  1040.      [outputForm setStringValue:"" at:0];
  1041.      [inputForm display];
  1042.      [outputForm display];
  1043.      [inputForm selectTextAt:0];
  1044.      return self;
  1045.   }
  1046.  
  1047.  
  1048. /* Volume (liquid)  */
  1049.  
  1050. - convertToFOunceCMill:sender
  1051.  {
  1052.      calcType = FOUNCECMILL;
  1053.      [inputForm setTitle:"fluid ounce:" at:0];
  1054.      [outputForm setTitle:"cubic millimeter:" at:0];
  1055.      [outputForm setStringValue:"" at:0];
  1056.      [inputForm display];
  1057.      [outputForm display];
  1058.      [inputForm selectTextAt:0];
  1059.      return self;
  1060.   }
  1061.  
  1062. - FOunceToMillilitres:sender
  1063.  {
  1064.      calcType = FOUNCEMILLILITRES;
  1065.      [inputForm setTitle:"fluid ounce:" at:0];
  1066.      [outputForm setTitle:"milliltres:" at:0];
  1067.      [outputForm setStringValue:"" at:0];
  1068.      [inputForm display];
  1069.      [outputForm display];
  1070.      [inputForm selectTextAt:0];
  1071.      return self;
  1072.   }
  1073.  
  1074.  
  1075. - convertToTeaCMill:sender
  1076.  {
  1077.      calcType = TEACMILL;
  1078.      [inputForm setTitle:"teaspoon:" at:0];
  1079.      [outputForm setTitle:"cubic millimeter:" at:0];
  1080.      [outputForm setStringValue:"" at:0];
  1081.      [inputForm display];
  1082.      [outputForm display];
  1083.      [inputForm selectTextAt:0];
  1084.      return self;
  1085.   }
  1086.  
  1087. - convertToTableCMill:sender
  1088.  {
  1089.      calcType = TABLECMILL;
  1090.      [inputForm setTitle:"tablespoon:" at:0];
  1091.      [outputForm setTitle:"cubic millimeter:" at:0];
  1092.      [outputForm setStringValue:"" at:0];
  1093.      [inputForm display];
  1094.      [outputForm display];
  1095.      [inputForm selectTextAt:0];
  1096.      return self;
  1097.   }
  1098.  
  1099. - convertToCupCMeter:sender
  1100.  {
  1101.      calcType = CUPCMETER;
  1102.      [inputForm setTitle:"cup:" at:0];
  1103.      [outputForm setTitle:"cubic millimeter:" at:0];
  1104.      [outputForm setStringValue:"" at:0];
  1105.      [inputForm display];
  1106.      [outputForm display];
  1107.      [inputForm selectTextAt:0];
  1108.      return self;
  1109.   }
  1110.  
  1111. - convertToPintCMeter:sender
  1112.  {
  1113.      calcType = PINTCMETER;
  1114.      [inputForm setTitle:"pint:" at:0];
  1115.      [outputForm setTitle:"cubic meter:" at:0];
  1116.      [outputForm setStringValue:"" at:0];
  1117.      [inputForm display];
  1118.      [outputForm display];
  1119.      [inputForm selectTextAt:0];
  1120.      return self;
  1121.   }
  1122.  
  1123. - PintToLitre:sender
  1124.  {
  1125.      calcType = PINTLITRE;
  1126.      [inputForm setTitle:"pint:" at:0];
  1127.      [outputForm setTitle:"litre:" at:0];
  1128.      [outputForm setStringValue:"" at:0];
  1129.      [inputForm display];
  1130.      [outputForm display];
  1131.      [inputForm selectTextAt:0];
  1132.      return self;
  1133.   }
  1134.  
  1135. - QuartToLitre:sender
  1136.  {
  1137.      calcType = QUARTLITRE;
  1138.      [inputForm setTitle:"quart:" at:0];
  1139.      [outputForm setTitle:"litre:" at:0];
  1140.      [outputForm setStringValue:"" at:0];
  1141.      [inputForm display];
  1142.      [outputForm display];
  1143.      [inputForm selectTextAt:0];
  1144.      return self;
  1145.   }
  1146.  
  1147. - convertToQuartCMeter:sender
  1148.  {
  1149.      calcType = QUARTCMETER;
  1150.      [inputForm setTitle:"quart:" at:0];
  1151.      [outputForm setTitle:"cubic meter:" at:0];
  1152.      [outputForm setStringValue:"" at:0];
  1153.      [inputForm display];
  1154.      [outputForm display];
  1155.      [inputForm selectTextAt:0];
  1156.      return self;
  1157.   }
  1158.  
  1159. - USQuartToLitre:sender
  1160.  {
  1161.      calcType = USQUARTLITRE;
  1162.      [inputForm setTitle:"US quart:" at:0];
  1163.      [outputForm setTitle:"litre:" at:0];
  1164.      [outputForm setStringValue:"" at:0];
  1165.      [inputForm display];
  1166.      [outputForm display];
  1167.      [inputForm selectTextAt:0];
  1168.      return self;
  1169.   }
  1170.  
  1171. - LitreToUSQuart:sender
  1172.  {
  1173.      calcType = LITREUSQUART;
  1174.      [inputForm setTitle:"litre:" at:0];
  1175.      [outputForm setTitle:"US quart:" at:0];
  1176.      [outputForm setStringValue:"" at:0];
  1177.      [inputForm display];
  1178.      [outputForm display];
  1179.      [inputForm selectTextAt:0];
  1180.      return self;
  1181.   }
  1182.  
  1183. - convertToGallonCMeter:sender
  1184.  {
  1185.      calcType = GALLONCMETER;
  1186.      [inputForm setTitle:"gallon:" at:0];
  1187.      [outputForm setTitle:"cubic meter:" at:0];
  1188.      [outputForm setStringValue:"" at:0];
  1189.      [inputForm display];
  1190.      [outputForm display];
  1191.      [inputForm selectTextAt:0];
  1192.      return self;
  1193.   }
  1194.  
  1195. - convertToGallonLiter:sender
  1196.  {
  1197.      calcType = GALLONLITER;
  1198.      [inputForm setTitle:"US gallon:" at:0];
  1199.      [outputForm setTitle:"litre:" at:0];
  1200.      [outputForm setStringValue:"" at:0];
  1201.      [inputForm display];
  1202.      [outputForm display];
  1203.      [inputForm selectTextAt:0];
  1204.      return self;
  1205.   }
  1206.  
  1207. - convertToLiterGallon:sender
  1208.  {
  1209.      calcType = LITERGALLON;
  1210.      [inputForm setTitle:"litre:" at:0];
  1211.      [outputForm setTitle:"US gallon:" at:0];
  1212.      [outputForm setStringValue:"" at:0];
  1213.      [inputForm display];
  1214.      [outputForm display];
  1215.      [inputForm selectTextAt:0];
  1216.      return self;
  1217.   }
  1218.  
  1219. /* MASS */
  1220.  
  1221. - convertToOunceGram:sender
  1222.  {
  1223.      calcType = OUNCEGRAM;
  1224.      [inputForm setTitle:"ounce:" at:0];
  1225.      [outputForm setTitle:"gram:" at:0];
  1226.      [outputForm setStringValue:"" at:0];
  1227.      [inputForm display];
  1228.      [outputForm display];
  1229.      [inputForm selectTextAt:0];
  1230.      return self;
  1231.   }
  1232.  
  1233. - convertToGramOunce:sender
  1234.  {
  1235.      calcType = GRAMOUNCE;
  1236.      [inputForm setTitle:"gram:" at:0];
  1237.      [outputForm setTitle:"ounce:" at:0];
  1238.      [outputForm setStringValue:"" at:0];
  1239.      [inputForm display];
  1240.      [outputForm display];
  1241.      [inputForm selectTextAt:0];
  1242.      return self;
  1243.   }
  1244.  
  1245. - convertToPoundGram:sender
  1246.  {
  1247.      calcType = POUNDGRAM;
  1248.      [inputForm setTitle:"pound:" at:0];
  1249.      [outputForm setTitle:"gram:" at:0];
  1250.      [outputForm setStringValue:"" at:0];
  1251.      [inputForm display];
  1252.      [outputForm display];
  1253.      [inputForm selectTextAt:0];
  1254.      return self;
  1255.   }
  1256.  
  1257. - convertToPoundKilogram:sender
  1258.  {
  1259.      calcType = POUNDKILOGRAM;
  1260.      [inputForm setTitle:"pound:" at:0];
  1261.      [outputForm setTitle:"kilogram:" at:0];
  1262.      [outputForm setStringValue:"" at:0];
  1263.      [inputForm display];
  1264.      [outputForm display];
  1265.      [inputForm selectTextAt:0];
  1266.      return self;
  1267.   }
  1268.  
  1269. - convertToKilogramPound:sender
  1270.  {
  1271.      calcType = KILOGRAMPOUND;
  1272.      [inputForm setTitle:"kilogram:" at:0];
  1273.      [outputForm setTitle:"pound:" at:0];
  1274.      [outputForm setStringValue:"" at:0];
  1275.      [inputForm display];
  1276.      [outputForm display];
  1277.      [inputForm selectTextAt:0];
  1278.      return self;
  1279.   }
  1280.  
  1281. - convertToGramPound:sender
  1282.  {
  1283.      calcType = GRAMPOUND;
  1284.      [inputForm setTitle:"gram:" at:0];
  1285.      [outputForm setTitle:"pound:" at:0];
  1286.      [outputForm setStringValue:"" at:0];
  1287.      [inputForm display];
  1288.      [outputForm display];
  1289.      [inputForm selectTextAt:0];
  1290.      return self;
  1291.   }
  1292.  
  1293. - convertToMTonPound:sender
  1294.  {
  1295.      calcType = MTONPOUND;
  1296.      [inputForm setTitle:"metric ton:" at:0];
  1297.      [outputForm setTitle:"pound:" at:0];
  1298.      [outputForm setStringValue:"" at:0];
  1299.      [inputForm display];
  1300.      [outputForm display];
  1301.      [inputForm selectTextAt:0];
  1302.      return self;
  1303.   }
  1304.  
  1305. - convertToPoundMTon:sender
  1306.  {
  1307.      calcType = POUNDMTON;
  1308.      [inputForm setTitle:"pound:" at:0];
  1309.      [outputForm setTitle:"metric ton:" at:0];
  1310.      [outputForm setStringValue:"" at:0];
  1311.      [inputForm display];
  1312.      [outputForm display];
  1313.      [inputForm selectTextAt:0];
  1314.      return self;
  1315.   }
  1316.  
  1317. /* FLOW */
  1318. - LitresPStoUSGPM:sender
  1319.  {
  1320.      calcType = LITRESPSUSGPM;
  1321.      [inputForm setTitle:"litres per second:" at:0];
  1322.      [outputForm setTitle:"US gallons per minute:" at:0];
  1323.      [outputForm setStringValue:"" at:0];
  1324.      [inputForm display];
  1325.      [outputForm display];
  1326.      [inputForm selectTextAt:0];
  1327.      return self;
  1328.   }
  1329.  
  1330. - USGPMToLitresPS:sender
  1331.  {
  1332.      calcType = USGPMLITRESPS;
  1333.      [inputForm setTitle:"US gallons per minute:" at:0];
  1334.      [outputForm setTitle:"litres per second:" at:0];
  1335.      [outputForm setStringValue:"" at:0];
  1336.      [inputForm display];
  1337.      [outputForm display];
  1338.      [inputForm selectTextAt:0];
  1339.      return self;
  1340.   }
  1341.  
  1342. - LitresPSToCFeetPM:sender
  1343.  {
  1344.      calcType = LITRESPSCFEETPM;
  1345.      [inputForm setTitle:"litres per second:" at:0];
  1346.      [outputForm setTitle:"cubic feet per minute:" at:0];
  1347.      [outputForm setStringValue:"" at:0];
  1348.      [inputForm display];
  1349.      [outputForm display];
  1350.      [inputForm selectTextAt:0];
  1351.      return self;
  1352.   }
  1353.  
  1354. - CFeetPMToLitresPS:sender
  1355.  {
  1356.      calcType = CFEETPMLITRESPS;
  1357.      [inputForm setTitle:"cubic feet per minute:" at:0];
  1358.      [outputForm setTitle:"litres per second:" at:0];
  1359.      [outputForm setStringValue:"" at:0];
  1360.      [inputForm display];
  1361.      [outputForm display];
  1362.      [inputForm selectTextAt:0];
  1363.      return self;
  1364.   }
  1365.  
  1366. /* PRESSURE */
  1367.  
  1368. - FeetWToKPascal:sender
  1369.  {
  1370.      calcType = FEETWKPASCAL;
  1371.      [inputForm setTitle:"feet of water:" at:0];
  1372.      [outputForm setTitle:"kilopascal:" at:0];
  1373.      [outputForm setStringValue:"" at:0];
  1374.      [inputForm display];
  1375.      [outputForm display];
  1376.      [inputForm selectTextAt:0];
  1377.      return self;
  1378.   }
  1379.  
  1380. - KPascalToFeetW:sender
  1381.  {
  1382.      calcType = KPASCALFEETW;
  1383.      [inputForm setTitle:"kilopascal:" at:0];
  1384.      [outputForm setTitle:"feet of water:" at:0];
  1385.      [outputForm setStringValue:"" at:0];
  1386.      [inputForm display];
  1387.      [outputForm display];
  1388.      [inputForm selectTextAt:0];
  1389.      return self;
  1390.   }
  1391.  
  1392. - PoundsSIToKPascal:sender
  1393.  {
  1394.      calcType = POUNDSSIKPASCAL;
  1395.      [inputForm setTitle:"pounds per square inch:" at:0];
  1396.      [outputForm setTitle:"kilopascal:" at:0];
  1397.      [outputForm setStringValue:"" at:0];
  1398.      [inputForm display];
  1399.      [outputForm display];
  1400.      [inputForm selectTextAt:0];
  1401.      return self;
  1402.   }
  1403.  
  1404. - KPascalToPoundsSI:sender
  1405.  {
  1406.      calcType = KPASCALPOUNDSSI;
  1407.      [inputForm setTitle:"kilopascal:" at:0];
  1408.      [outputForm setTitle:"pounds per square inch:" at:0];
  1409.      [outputForm setStringValue:"" at:0];
  1410.      [inputForm display];
  1411.      [outputForm display];
  1412.      [inputForm selectTextAt:0];
  1413.      return self;
  1414.   }
  1415.  
  1416.  
  1417.  
  1418. /* OTHER */
  1419.  
  1420. - convertToHpWatts:sender
  1421.  {
  1422.      calcType = HPWATTS;
  1423.      [inputForm setTitle:"horsepower:" at:0];
  1424.      [outputForm setTitle:"Watts:" at:0];
  1425.      [outputForm setStringValue:"" at:0];
  1426.      [inputForm display];
  1427.      [outputForm display];
  1428.      [inputForm selectTextAt:0];
  1429.      return self;
  1430.   }
  1431.  
  1432. - WattsToHp:sender
  1433.  {
  1434.      calcType = WATTSHP;
  1435.      [inputForm setTitle:"Watts:" at:0];
  1436.      [outputForm setTitle:"horsepower:" at:0];
  1437.      [outputForm setStringValue:"" at:0];
  1438.      [inputForm display];
  1439.      [outputForm display];
  1440.      [inputForm selectTextAt:0];
  1441.      return self;
  1442.   }
  1443.  
  1444. - convertToBtuKilo:sender
  1445.  {
  1446.      calcType = BTUKILO;
  1447.      [inputForm setTitle:"btu:" at:0];
  1448.      [outputForm setTitle:"kilojoules:" at:0];
  1449.      [outputForm setStringValue:"" at:0];
  1450.      [inputForm display];
  1451.      [outputForm display];
  1452.      [inputForm selectTextAt:0];
  1453.      return self;
  1454.   }
  1455.  
  1456. - BTUToWatts:sender
  1457.  {
  1458.      calcType = BTUWATTS;
  1459.      [inputForm setTitle:"btu per hour:" at:0];
  1460.      [outputForm setTitle:"Watts:" at:0];
  1461.      [outputForm setStringValue:"" at:0];
  1462.      [inputForm display];
  1463.      [outputForm display];
  1464.      [inputForm selectTextAt:0];
  1465.      return self;
  1466.   }
  1467.  
  1468. - convertToKnotsMps:sender
  1469.  {
  1470.      calcType = KNOTSMPS;
  1471.      [inputForm setTitle:"knots:" at:0];
  1472.      [outputForm setTitle:"meters per second:" at:0];
  1473.      [outputForm setStringValue:"" at:0];
  1474.      [inputForm display];
  1475.      [outputForm display];
  1476.      [inputForm selectTextAt:0];
  1477.      return self;
  1478.   }
  1479.  
  1480. - RefTonToBTUH:sender
  1481.  {
  1482.      calcType = REFTONBTUH;
  1483.      [inputForm setTitle:"refrigeration ton:" at:0];
  1484.      [outputForm setTitle:"b.t.u. per hour:" at:0];
  1485.      [outputForm setStringValue:"" at:0];
  1486.      [inputForm display];
  1487.      [outputForm display];
  1488.      [inputForm selectTextAt:0];
  1489.      return self;
  1490.   }
  1491.  
  1492. @end
  1493.